#pragma bank 255

#include "hUGEDriver.h"
#include <stddef.h>

static const unsigned char order_cnt = 6;

static const unsigned char P0[] = {
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
};
static const unsigned char P1[] = {
    DN(Cs4,1,0x900),
    DN(Gs4,1,0xC07),
    DN(Gs4,1,0x940),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x4C0),
    DN(Gs4,1,0xC07),
    DN(Cs4,1,0x940),
    DN(Cs5,1,0xC07),
    DN(Gs4,1,0x900),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x940),
    DN(Gs4,1,0xC07),
    DN(Cs4,1,0x4C0),
    DN(Cs5,1,0xC07),
    DN(Gs4,1,0x940),
    DN(Cs4,1,0xC07),
    DN(Cs4,1,0x900),
    DN(Gs4,1,0xC07),
    DN(Gs4,1,0x940),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x4C0),
    DN(Gs4,1,0xC07),
    DN(Cs4,1,0x940),
    DN(Cs5,1,0xC07),
    DN(Gs4,1,0x900),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x940),
    DN(Gs4,1,0xC07),
    DN(E_5,1,0x4C0),
    DN(Cs5,1,0xC07),
    DN(Ds5,1,0x940),
    DN(E_5,1,0xC07),
    DN(Cs4,1,0x900),
    DN(Ds5,1,0xC07),
    DN(Gs4,1,0x940),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x4C0),
    DN(Gs4,1,0xC07),
    DN(Cs4,1,0x940),
    DN(Cs5,1,0xC07),
    DN(Gs4,1,0x900),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x940),
    DN(Gs4,1,0xC07),
    DN(Cs4,1,0x4C0),
    DN(Cs5,1,0xC07),
    DN(Gs4,1,0x940),
    DN(Cs4,1,0xC07),
    DN(Cs4,1,0x900),
    DN(Gs4,1,0xC07),
    DN(Gs4,1,0x940),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x4C0),
    DN(Gs4,1,0xC07),
    DN(Cs4,1,0x940),
    DN(Cs5,1,0xC07),
    DN(Gs4,1,0x900),
    DN(Cs4,1,0xC07),
    DN(Cs5,1,0x940),
    DN(Gs4,1,0xC07),
    DN(B_4,1,0x4C0),
    DN(Cs5,1,0xC07),
    DN(As4,1,0x940),
    DN(B_4,1,0xC07),
};
static const unsigned char P2[] = {
    DN(Cs4,2,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(E_4,2,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(E_5,2,0x340),
    DN(___,0,0x340),
    DN(Fs4,2,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x212),
    DN(___,0,0x212),
    DN(___,0,0x212),
    DN(___,0,0x212),
};
static const unsigned char P3[] = {
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(Cs5,0,0x000),
    DN(Cs4,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs7,2,0x2A0),
    DN(Cs4,0,0x000),
    DN(Cs5,0,0x000),
    DN(Cs4,0,0x000),
};
static const unsigned char P4[] = {
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x000),
    DN(___,0,0x000),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(___,0,0x037),
    DN(Cs5,3,0x037),
    DN(___,0,0x037),
};
static const unsigned char P5[] = {
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
    DN(G_6,4,0xC1F),
    DN(___,0,0x000),
    DN(D_8,4,0xC1F),
    DN(___,0,0x000),
};

static const unsigned char* const order1[] = {P1,P1,P1};
static const unsigned char* const order2[] = {P0,P0,P4};
static const unsigned char* const order3[] = {P0,P2,P3};
static const unsigned char* const order4[] = {P0,P0,P5};

static const unsigned char duty_instruments[] = {
12,46,240,128,
8,128,240,128,
8,128,179,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
8,128,240,128,
};
static const unsigned char wave_instruments[] = {
0,32,0,128,
0,32,0,128,
0,32,2,128,
0,32,3,128,
0,32,4,128,
0,32,5,128,
0,32,6,128,
0,32,7,128,
0,32,8,128,
0,32,9,128,
0,32,10,128,
0,32,11,128,
0,32,12,128,
0,32,13,128,
0,32,14,128,
};
static const unsigned char noise_instruments[] = {
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
97,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
240,0,0,0,0,0,0,0,
};

static const unsigned char waves[] = {
    2,32,0,51,0,64,0,14,255,175,255,190,221,203,186,151,
    255,7,184,219,9,108,11,199,40,153,23,166,107,107,25,184,
    154,44,137,182,216,85,187,205,148,205,28,55,91,195,188,62,
    210,200,176,234,83,134,146,68,73,42,6,148,100,235,194,103,
    232,173,201,205,227,78,170,221,19,173,83,142,100,237,151,169,
    234,62,185,5,74,26,69,17,178,84,150,130,174,102,219,45,
    220,56,227,133,109,72,137,160,160,199,131,32,39,70,177,76,
    189,12,214,215,229,197,39,164,129,61,176,213,140,96,1,121,
    174,147,195,220,52,212,29,169,2,23,115,192,118,51,68,1,
    116,172,144,122,30,150,165,155,190,51,102,237,101,224,144,142,
    87,183,182,121,19,189,102,231,66,120,166,120,236,112,155,78,
    118,153,178,44,155,165,134,179,3,104,18,12,238,52,30,188,
    41,129,202,210,77,192,126,6,81,60,209,54,153,53,0,67,
    210,198,112,202,229,208,133,195,108,116,186,54,75,114,203,236,
    17,13,88,92,9,236,99,134,20,219,8,155,135,235,222,94,
    101,235,120,94,217,1,204,1,113,107,131,42,144,110,214,161,
};

const void __at(255) __bank_music_track_103__Data;
const hUGESong_t music_track_103__Data = {6, &order_cnt, order1, order2, order3,order4, duty_instruments, wave_instruments, noise_instruments, NULL, waves};
